from setuptools import setup
import os
from glob import glob

package_name = 'drone_navigation'

setup(
    name=package_name,
    version='1.0.0',
    packages=[package_name],
    data_files=[
        ('share/ament_index/resource_index/packages',
            ['resource/' + package_name]),
        ('share/' + package_name, ['package.xml']),
        # Launch files
        (os.path.join('share', package_name, 'launch'), 
         glob('launch/*.launch.py')),
        # Config files
        (os.path.join('share', package_name, 'config'), 
         glob('config/*.yaml')),
        (os.path.join('share', package_name, 'config'), 
         glob('config/*.xml')),
    ],
    install_requires=[
        'setuptools',
        'numpy',
        'scipy',
        'scikit-learn',
        'psutil',        # 系统性能监控
        'pyserial',      # 串口通信
        'transforms3d',  # 3D变换计算
    ],
    zip_safe=True,
    maintainer='Drone Navigation Team',
    maintainer_email='user@example.com',
    description='无人机自主导航系统 - 基于point_lio和navigation2',
    license='MIT',
    tests_require=['pytest'],
    entry_points={
        'console_scripts': [
            'drone_navigator = drone_navigation.drone_navigator:main',
            'obstacle_detector = drone_navigation.obstacle_detector:main',
            'velocity_controller = drone_navigation.velocity_controller:main',
            'navigation_manager = drone_navigation.navigation_manager:main',
            'performance_monitor = scripts.performance_monitor:main',
        ],
    },
) 